<template>
	<view class='login'>


		<swiper vertical="true" style="height: 100vh;">
			<swiper-item>
				<view class="swiper-item">
					<view class='login-tel'>
						<view class='tel-main'>
							<view class='close' @tap="goBack">
								<image class='close-img' src="../../static/img/close.png" mode=""></image>
							</view>
							<view class='logo'>
								<image class='logo-img' src="../../static/img/t-shirt-1.1s-284px.png" mode=""></image>
							</view>
							<view class='tel' @tap="goLoginTel">手机号注册</view>
							<LoginOther></LoginOther>
							<view class='login-go'>
								<view>已有账号，去登录</view>
								<image src="../../static/img/down.png" mode=""></image>
							</view>
						</view>
					</view>
				</view>
			</swiper-item>
			<swiper-item>
				<view class="swiper-item">
					<!-- 登陆 -->
					<view class='login-tel'>
						<view class='tel-main'>
							<view class='close close-center'>
								<view @tap="goBack">
									<image class='close-img' src="../../static/img/close.png" mode=""></image>
								</view>
								<view class='login-go'>
									<image class='close-img' src="../../static/img/up.png" mode=""></image>
									<view>没有账号,去注册</view>
								</view>
								<view></view>
							</view>
							<view class='login-from'>
								<view class='login-user'>
									<text class='user-text'>账号</text>
									<input  type="text" v-model="userName" value="" placeholder="请输入手机号/昵称" />
								</view>
								<view class='login-user'>
									<text class='user-text'>密码</text>
									<input type="text" v-model="userPwd" value="" placeholder="6-16位字符" />
								</view>
							</view>
							<view class='login-quic'>
								<view>忘记密码?</view>
								<view>免密登录</view>
							</view>
							<view class='tel' @tap="submit">登录</view>
							<view class='reminder'>温馨提示：您可以选择免密登录，更加方便</view>
							<LoginOther></LoginOther>
						</view>
					</view>

				</view>
			</swiper-item>
		</swiper>



	</view>
</template>

<script>
	import LoginOther from '@/components/login/login-other.vue'
	import {
		mapMutations
	} from 'vuex'
	export default {
		data() {
			return {
				//用户输入内容
				userName: "",
				userPwd: "",
				//验证的规则
				rules: {
					userName: {
					rule:/\S/,
						msg: "账号能为空"
					},
					userPwd: {
						rule: /^[0-9a-zA-z]{6,16}$/,
						msg: "密码应为6-16位字符"
					}
				}

			}
		},
		components: {
			LoginOther
		},
		methods: {
			...mapMutations('user', ['login']),


			//关闭当前页面，返回上一页
			goBack() {
				uni.navigateBack({
					delta: 1
				})
			},
			//点击登陆
			async submit() {

				if (!this.validate("userName")) return;
				if (!this.validate("userPwd")) return;

				// uni.showLoading({
				// 	title:"登录中..."
				// })
				try {	
					let res = await this.$Request({
						url: '/api/login',
						method: "POST",
						data: {
							userPhone: this.userName,
							userPwd: this.userPwd
						}
					})
				console.log(res,"登录");
					if(res.data.data.success){
							//保存用户信息
					this.login(res.data.data.data)

					uni.showToast({
						title: res.data.data.msg,
						icon: 'none'
					})
					uni.navigateBack({
						delta:1
					})
					}else{
						uni.showToast({
							icon:'none',
							title:res.data.data.msg
						})
					}
				
					
					
				} catch (e) {
					//TODO handle the exception
					uni.showToast({
						title: e,
						icon: 'none'
					})
				}

				// 	setTimeout(()=>{
				// 	uni.hideLoading();
				// 	uni.navigateBack({
				// 		delta:1
				// 	})
				// },2000)


			},


			//判断验证是否复核要求
			validate(key) {
				let bool = true;
				if (!this.rules[key].rule.test(this[key])) {

					uni.showToast({
						title: this.rules[key].msg,
						icon: "none"
					})
					// bool=false
					return false
				}
				return bool
			},
			// 手机号注册
			goLoginTel() {
				uni.navigateTo({
					url: "../login-tel/login-tel"
				})
			}
		}
	}
</script>
<style scoped>
	.login-tel {
		width: 100vw;
		height: 100vh;
	}

	.tel-main {
		padding: 0 20rpx;
	}

	.close {
		padding: 120rpx 0;
	}

	.close-img {
		width: 60rpx;
		height: 60rpx;
	}

	.logo {
		padding-bottom: 100rpx;
		display: flex;
		justify-content: center;
	}

	.tel {
		width: 100%;
		height: 80rpx;
		line-height: 80rpx;
		text-align: center;
		color: #FFFFFF;
		background-color: #49BDFB;
		border-radius: 40rpx;
	}

	.login-go {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}

	.login-go image {
		width: 60rpx;
		height: 60rpx;
	}

	/*第二*/
	.close-center {
		display: flex;
	}

	.close-center>view {
		flex: 1;
	}

	.login-from {
		padding-top: 100rpx;
	}

	.login-user {
		font-size: 32rpx;
		padding: 10rpx 0;
		display: flex;
		align-items: center;
		border-bottom: 2rpx solid #f7f7f7;
	}

	.user-text {
		padding-right: 10rpx;
	}

	.login-quic {
		display: flex;
		justify-content: space-between;
		padding: 20rpx 0;
	}

	.reminder {
		color: #CCCCCC;
		padding: 20rpx 0;
		text-align: center;
	}
</style>
